package org.hamcrest.integration;
import junit.framework.TestCase;
import org.hamcrest.BaseMatcher;
import org.hamcrest.Description;
import static org.hamcrest.core.IsEqual.equalTo;
import org.jmock.core.Constraint;
public class JMock1AdapterTest extends TestCase {
public static interface InterfaceToMock {
void doStuff(String name, int number);
}
public void testAdaptsHamcrestMatcherToJMockConstraint() {
Constraint jMockConstraint = new JMock1Adapter(equalTo("expected"));
assertTrue("Should have matched", jMockConstraint.eval("expected"));
assertFalse("Should not have matched", jMockConstraint.eval("unexpected"));
}
public void testDelegatesDescriptionToUnderlyingMatcher() {
Constraint jMockConstraint = new JMock1Adapter(new BaseMatcher<Object>() {
public boolean matches(Object o) {
return false;
}
public void describeTo(Description description) {
description.appendText("is like ");
description.appendValue("cheese");
}
});
StringBuffer buffer = new StringBuffer();
buffer = jMockConstraint.describeTo(buffer);
assertEquals("is like \"cheese\"", buffer.toString());
}
}